Synchronizing data-sets

ABSTRACT

Different data-sets for functionality to be synchronized across users can be identified by many variable including social networks the user is participating in, by identified interests of the user, by the physical location of the device being synchronized, by one or more applications being used on the device, by the season, by a social event being attended by a user, and by a wireless network being accessed at that time.

BACKGROUND

The present invention relates to synchronizing data-sets across multipledevices or clients and more specifically to setting type-ahead datausing attributes of the user or the environment and synchronizing thetype-ahead data between users and/or a centralized register.

Find As-You-Type (formerly called Type-Ahead Find) is a feature thatallows quick navigation to or selection of an entry without the need fora user to completely enter the entry. Find as you type may be used whena user types a succession of characters in the body of a displayedfield. A common example is client email applications, where the clientemail application may rely on previously entered email addresses tosupport type-ahead find prompting. For example, if a user emailsbilly.blogs@gmail.com today and then should decide to email him againtomorrow, the type-ahead feature would recognize a pattern associatedwith “Bill . . . ” as the user typed the name in the user's emailclient. The type-ahead feature would recognize the pattern and providethe full email address as a type-ahead prompt. In other words, thetype-ahead feature would find the email address billy.blogs@gmail.combefore the user finished typing the email address and prompt the userwith the complete email address or several other options before the userhad typed in all of the characters of the email address.

SUMMARY

Synchronizing data-sets across different users in real-time is providedin systems, methods, computer readable storage media, and otherembodiments. The different data-sets to be synchronized across users canbe identified by social networks the user is participating in, byidentified interests of the user, by the physical location of the devicebeing synchronized, by one or more applications being used on thedevice, by the season, by a social event being attended by a user, bythe identity of a user, and by a wireless network being accessed at thattime. Other synchronization tests and matching criteria may also beapplied.

In embodiments, the synchronization of data-sets may be for purposes ofa user to configure one or more devices or clients with browser recencystate or other classes of reused data across clients, applications,machines and devices. In so doing, efforts on one device may be lesslikely to be or need to be re-produced on other devices. In embodiments,the synchronization of data-sets may be triggered on some knowledge ofthe user, for example a login identity may be used.

Embodiments may provide where a data-set for completing type-aheadprompts is maintained, assembled, or distributed using attributes thatcan include the application being used at the user, the location of theuser's device, a social attribute of the user, a business attribute ofthe user, and environmental attributes at a user's device or thetype-ahead registry or both. These type-ahead data-sets may also beshared or synchronized between users without the intervention of thetype-ahead registry. In these instances, a first user may synchronizeits type-ahead data-set with other users sharing the same wirelessnetwork or the same wired network or attending the same conference oridentifying a mutual interest in the same topic of information (e.g.,trees, VoIP telephony, heart surgery, photography, etc.). When data-setsare synched using a registry of and between users, the synching may bedone in real-time. Thus, a patron attending an automobile show mayreceive a data-set that prompts the names of the specific automobilemodels being displayed at the show when the user keys in a few lettersof one or more model names into an Internet search engine. Likewise,customers of a company may receive type-ahead data-sets that providetype-ahead prompts that include the product line of the company.

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS

FIG. 1 is a flowchart describing data-set management in accord withembodiments.

FIG. 2 is a schematic showing components of a system for data-setmanagement as may be employed in embodiments.

FIG. 3 shows two tables as may be employed at a register for use inembodiments.

FIG. 4 shows a flowchart describing features of operations as may bestored or otherwise employed in embodiments.

FIG. 5 shows a computing apparatus and network as may be employed inembodiments.

DETAILED DESCRIPTION

Systems, methods, and apparatus, including computer readable storagemedia, may be employed in embodiments. Embodiments may include groupingusers or devices into one or more categories and sharing orsynchronizing data-sets or data-set settings of both with users anddevices in a shared category. In embodiments, the shared data-set mayreflect the data corresponding to individual searches or completedfields or other data from a single user and this data-set from thissingle user may then be shared to other users, including users who fallwithin a certain category. In so doing, data-sets for a single user canbe leveraged for use to all or some of the users in the same category.Thus, the efforts of a few can be shared with others.

In embodiments, type-ahead data-sets or type-ahead settings(cumulatively type-ahead operations) can be shared and exploited inreal-time. When used in situational applications these shared type-aheadoperations can enhance productivity in the particular situation suchthat users can have type-ahead operations specifically targeted for thelocation of the device and the application being used. For example anyuser that is in an IBM building may receive type-ahead operations basedon their location and these type-ahead operations can be specific to thelocation of the user. Further synchronization may also occur, where thetype-ahead operational data may be updated by operations of a singleuser and this revised type-ahead data may then be synchronized to allothers in the same location or on the same operating system or by havingsome other shared characteristic.

Adjustment to the shared type-ahead settings may also be carried outbased on known distinctions between locations or other recipientcharacteristics. For example, searches in the U.S. on an iOS™ device (orother device with a mobile operating system) for “fender” may add aprompt of “mudguard” for an iOS™ user known to be in the U.K.

In embodiments predetermined sets of type-ahead operations may also beavailable based on location and application used as well as possiblybeing related to the context of the task being executed. The type-aheadoperations can also leverage network resources, which may result intype-ahead data being stored for or associated with season, weather andevents where the person is attending or the person's acknowledged socialnetwork is attending. Accordingly, embodiments have the ability toimpose differences and symmetry across numerous devices and users.

In embodiments a user may be able to wrap/configure a shared type-aheadoperation around his or her preferred devices and clients, and within adefined characteristic or category to share information such astype-ahead find prompts, browser recency state, and all classes ofreused data across clients, applications, machines for other userssharing the characteristic or category. In embodiments this sharingbetween users may be accomplished in real-time. Storage of the sharedtype-ahead operations, characteristics, and categories may be employedin embodiments such that settings may be reproduced and synchronizedfrom previous settings when new devices or applications are added orwhen lost devices or applications need to be replicated.

In embodiments a central registry may be maintained on a server to whichall devices for that user and shared users in the shared category ofenvironment may reconcile device level context. Preferences on eachdevice may allow for pulling recent user state tables from this centralregistry on boot up or application launch or on request or via push. Insome embodiments, there may be no central user shared registrymaintained such that when state changes within any synchronized devicein a given realm changes, the change is immediately pushed to otherdevices to consume, and the act of consumption can be immediate (ifdevices are online/available) or pending (available when device isrecognized as being available) accept and apply the change in effectivereal-time.

In embodiments users may quickly add and remove a device or applicationinto and out of the shared environment or category. One such example maybe to cater for the temporary use case where the user may be on amachine in an internet cafe and may wish to remove the environment datafrom this machine when finished, or if the user is on a temporary VM, orif the user is using/borrowing a device temporarily.

Embodiments can include having type-ahead operations comprise emailaddresses and URLs as well as various other datum, including, recentlydialed phone numbers, preferred contacts, browser history, cookies, anduseful cache state. Likewise, embodiments can be employed such that insocial environments a plurality of users can occupy a shared category,where the data corresponding to one user in that category can beleveraged by other users in that same category or a related category orsub-category. Thus, efforts of a few, in things like name type-ahead,web site type-ahead, etc. can be quickly shared and leveraged by many.

FIG. 1 shows a flowchart of features as may be employed in embodiments.The features in this flowchart and other flowcharts of the applicationmay be employed in various orders and in various ways, with more or lessthan is described in the flowchart. Box 100 of the flowchart of FIG. 1identifies a central registry or a first user device and how a data-setfor type-ahead operations may be maintained there. This data-set maysent to other devices and may be used by those receiving devices forsetup or revision of type-ahead registries maintained at the receivingdevice. Box 100 also identifies how the type-ahead data-set may trackvarious variables and may be sent to users based on a user'scharacteristics. These characteristics include an application being runby the user, the location of the user's device, and social groups theuser associated with. Box 100 further explains that the type-aheaddata-set may be further adjusted to account for temporal orenvironmental information such as the weather, the time, a wirelessnetwork being used, and an event being attended by the recipient.

Box 110 of FIG. 1 explains how type-ahead operations, whether data orsettings, may be sent from a registry or first device to a second devicethat would employ the operations. This second device may be selected forreceipt because it is expected to be at a target location (e.g., abusiness headquarters, a business conference, a restaurant, etc.) or ispart of a social or business networking group (e.g., Facebook™,Linkedin™, etc.).

Box 120 of FIG. 1 describes how the type-ahead operations, whether dataor settings, can be received by the second device and used by the seconddevice during type-ahead operations for one or more applications runningor to be run on the second device. A user of the second device maybenefit from the additional type-ahead operations received when searchesor other uses of one of applicable applications is used. As to thetypes-ahead data, it may provide cues or suggestions for search termstargeted to the physical location of the second device or a networkinggroup the second device is a member of or expected to become a memberof:

FIG. 2 shows a system for synchronizing type-ahead operations in accordwith embodiments. Visible in FIG. 2 are user devices 250-253, userdevice 260, user device 240, computer 200, type-ahead registry 201,communication engine 202, synchronization engine 203, network router235, network router 210, and network router 230. The user devices250-253 are shown to be smartphone computers but could be other devicesas well. Likewise the user devices 240 and 260 are shown to be a tabletcomputer and a laptop computer but can be other devices as well.Applications with state on these user devices may include email clients,web browsers, softphones, text messengers, calenders, and translators.other applications with state maintenance may also be available on theseuser devices. In embodiments, and as discussed above, a single user maybe associated with more than one device. For example, user 1 may be theowner of user devices 251 and 240.

The diagonal line 220 is shown to indicate which network the specificdevice is a member of. As can be seen, devices 251-253 are members ofand connected to network 230 while devices 250 and 240 are members ofand connected to network router 235. Device 260 is a member of bothnetworks. The network routers 230 and 235 may be wired and wirelessrouters or other gateway devices to access a network. Each router 230and 235 is shown in communication with computer 200. This computer 200is shown to contain type-ahead registry 201, communication engine 202,synchronization engine 203, and is shown to be in communication withnetwork router 210 as well. The computer 200 may maintain a registry 201that documents the zone a particular device is in, search cues orsuggestions that may apply to that particular zone, what theenvironmental status is for any user of the registry, the statue of anyor all users of the registry, and various other information that may beused when tracking or accounting for the type-ahead operations or otherdata-sets to be shared amongst or synchronized with numerous users. Thecommunication engine 202 may be controlling or carrying out the sendingand receiving type-ahead data or settings from users or devices. Thesynchronization engine 203 may be controlling or carrying out operationsneeded to track versions, receipt confirmation, login and logout times,etc. with regard to maintaining synchronization of type-ahead data orsetting or both across multiple devices, multiple, users, and multiplenetworks.

FIG. 3 shows two tables that may be present in the registry 210 and thatmay be maintained by the synchronization engine 212 or other portion ofthe computer 200. These tables 310 and 350 may be used for maintainingstate information for many users 312 and many devices across severalnetworks and for sharing the relevant state information as may be neededfor synchronized type-ahead operations. The information tracked in thetable may include user searches 330 and 352, environmental status 320,network zones 311, user registration status 351, network status 353, anduser devices 360. Other information, including other state information,may also be tracked and managed in these tables.

FIG. 4 shows a flowchart of features of processes as may be employed inembodiments. Box 400 of FIG. 4 describes how processes in embodimentsmay include initiating or maintaining a data-set for customizedtype-ahead operations for use by one or more users and one or moredevices. As the process is employed, periodic queries or updates may beconducted. Decision diamond 410 shows that a determination of whether asetting or an update exists for a data-set. If an update does exist Box420 discusses how settings or updated type-ahead data may be collectedand if no update exists box 430 shows how a data-set may be pushed toexisting registered devices. Decision diamond 40 accounts for the entryof new users or devices and shows a determination may be made as towhether an unregistered user or device has joined the network group orentered a tracked physical space. If neither has occurred, box 470 showsthe Registry may continue to wait for new state defaults andenvironmental updates. If an update has occurred, box 450 shows howregistrations may be accepted and the previously unregistered device mayreceive the type-ahead data-set or settings for use by the nowregistered device. Box 460 shows how the now registered device mayitself send updates to the registry as the newly registered device isused. These updates may include physical location device grouping,social grouping, and other aspects or attributes of the deviceapplications, settings, location, and associations.

FIG. 5 shows a computer, network, user devices, and network resources asmay be employed in embodiments. The computer 500 is shown with a harddrive interface 510, a hard drive 530, a serial port interface 570, anetwork interface 580, a video adapter 560, a first removable mediadrive 550, a second removable media drive 540, a processor unit 535,local memory 520 and a bus providing for communication among and betweenthese computer components. The hard drive interface is shown havingstored thereon an operating system 511, one or more application programmodules 512, and application program data 513. The local memory 520 isshown with system memory 521, Read Only Memory 522, Random Access Memory527, one or more instances of an operating system 523, one or moreapplications 524, internal resources for the applications 525, andprogram data 526. The computer 500 is shown connected to a monitor 543,a keyboard 544, a mouse 545 and network 585. Other input devices, whichare not illustrated, may include a microphone, joystick, game pad,satellite dish, scanner, or the like. Flash drive 541 and CD-ROM 542 areshown for connection with removable media drives 540 and 550. Thenetwork 585 has network resource 593 and three user devices 590, 591,and 592 in communication with and through the network.

Embodiments may also be considered to be monitoring and synchronizingstate across numerous devices. In so doing, embodiments may beconsidered to recognize that state on one device represents context thatcan/should be used on a different device that is owned by the same user(or any social cohort). Examples of such state can include browserhistory, cookies, session information, preferences, passwords,type-ahead cues and subscriptions, etc. A very simply example ofsynchronized state can include a user entering a URI on a phone that theuser does not want to re-enter on his or her iPad™. In this or otherembodiments, the categorization or environment may be defined relativeto the user's identity, hinged off of a preference on the device,perhaps a selected “manage state across devices.” Applications thatmaintain state/history/context may be modified to save and perhaps placethis state into a registry for one device or all devices sharing theservice. When a new device is used the registry may push state data-setsto the recently launched device. And, in embodiments, if devices areused concurrently then state may be synchronized in real-time. Moreover,in embodiments, the devices may be transitory, which may account forwhen a user a peer's device is borrowed (or a user is in an internecafé, for example) such that state data-sets may be pushed for theduration of use, updates saved during use, but destroyed after usage(hinged on the user logging out).

In embodiments, operations to be shared can be hinged off of an identitywith behaviors as described above. Likewise, the notion of state beingshared as described above in a social cohort may also be employed inembodiments. Examples of shared social networks include a family, a teamof people, and a group of colleagues. As can be seen, in this example,the social network essentially live in the same realm, where state ismanaged and maintained in this realm. Implementation of this realmoperation may include exploiting a tag (e.g. Smith for the Smith Family)when configured/associated with a device that enters the environment orcould benefit from state management across the environment. Otherembodiments are also plausible as communities, organizations, and otherenvironments may also be considered and used.

Examples of where type-ahead finds of embodiments may be employedinclude where an individual user acquires a new client (e.g. iPhone™,iPad™, laptop, desktop, VMWare™ image, alternate browser etc) and theuser may have to re-construct the type-ahead and “context” corpus fromother devices or earlier sessions, re-establishing patterns in the newclient in so doing. Such patterns may include type-ahead on mail names,in browser web sites in the local browser, IP/server addresses, recencylists, and so on. Likewise when someone borrows another's device for ashort period of time (e.g. when using a machine at an internet cafe,when using a machine in a lab, when powering up a temporary VM to aparticular task), the type-ahead and “context” corpus from other devicesor earlier sessions may be established temporarily or permanently on theborrowed device from another user.

Various fields or other areas may be populated in type-aheadembodiments. These include browser history, cookies, recently dialedphone numbers, recently dialed facsimile number, recency state, passwordcredentials, ring tones, background screenshots, ring volume, userinterface preferences, application preferences, user interface settings,etc.

In embodiments, replication or synchronization may not be prioritizedper say. Rather, embodiments may employ an association of a device orplurality of devices to a user environment, the identification ofuser-defined application wide states to store in this environment, andthe exploitation of this data in real time situational applicationswhere the data in this environment can enhance productivity in thesituations described. Implementation of embodiments may includeregistering an association between clients/devices on a server machine.On that server machine ajazian style pull/push requests can besent/received either a) on initialization of the client application; b)on request (e.g. a user in an internet cafe associated their client withthis server for a temporary (e.g. 60 min) basis and after 60 mins theserver takes steps to assist in acquiescing the data on the client;and/or c) on a scheduled basis to keep the user preferredclients/devices up to date.

Still further, embodiments may also include type-ahead operations beingby a server or pulled by the user to the device/client. And, thedata-sets may be shared with a plurality of individuals corresponding toa social community, directed acyclic graph (e.g. corporate directory), ateam/department, or identified third party. Moreover, in embodiments,the type-ahead operations including data-sets and settings, can persistindefinitely at a registry or user, or be updated indefinitely at aregistry or user, or for a short window of time.

As a specific example, and further to what is discussed above, thetype-ahead data-set may be associated with the location of the device.For example any user determined to be in an IBM building may receive apre-determined set of type-ahead data based on their location and theapplications being used. Here or elsewhere, a type-ahead feature canincorporate technical terms, acronyms or various external dictionariesrelated to the current communication or location. Moreover, type-aheaddata can be associated with season, weather and indeed events where theperson is attending. Embodiments can also impose deference or symmetryin various ways for the device such that other devices in the user'srealm benefit from consistency in areas like screen background, ringtone, ring volume or other device characteristic (e.g. password), etc

The terminology used herein is for the purpose of describing particularembodiments only and is not intended to be limiting of the invention. Asused herein, the singular forms “a,” “an” and “the” are intended toinclude plural forms as well, unless the context clearly indicatesotherwise. It will be further understood that the terms “comprises”and/or “comprising,” when used in this specification, specific thepresence of stated features, integers, steps, operations, elements,and/or components, but do not preclude the presence or addition of oneor more other features, integers, steps, operation, elements,components, and/or groups thereof.

Embodiments may be implemented as a computer process, a computing systemor as an article of manufacture such as a computer program product ofcomputer readable media. The computer program product may be a computerstorage medium readable by a computer system and encoding a computerprogram instructions for executing a computer process.

The present invention may be a system, a method, and/or a computerprogram product. The computer program product may include a computerreadable storage medium (or media) having computer readable programinstructions thereon for causing a processor to carry out aspects of thepresent invention.

The computer readable storage medium can be a tangible device that canretain and store instructions for use by an instruction executiondevice. The computer readable storage medium may be, for example, but isnot limited to, an electronic storage device, a magnetic storage device,an optical storage device, an electromagnetic storage device, asemiconductor storage device, or any suitable combination of theforegoing. A non-exhaustive list of more specific examples of thecomputer readable storage medium includes the following: a portablecomputer diskette, a hard disk, a random access memory (RAM), aread-only memory (ROM), an erasable programmable read-only memory (EPROMor Flash memory), a static random access memory (SRAM), a portablecompact disc read-only memory (CD-ROM), a digital versatile disk (DVD),a memory stick, a floppy disk, a mechanically encoded device such aspunch-cards or raised structures in a groove having instructionsrecorded thereon, and any suitable combination of the foregoing. Acomputer readable storage medium, as used herein, is not to be construedas being transitory signals per se, such as radio waves or other freelypropagating electromagnetic waves, electromagnetic waves propagatingthrough a waveguide or other transmission media (e.g., light pulsespassing through a fiber-optic cable), or electrical signals transmittedthrough a wire.

Computer readable program instructions described herein can bedownloaded to respective computing/processing devices from a computerreadable storage medium or to an external computer or external storagedevice via a network, for example, the Internet, a local area network, awide area network and/or a wireless network. The network may comprisecopper transmission cables, optical transmission fibers, wirelesstransmission, routers, firewalls, switches, gateway computers and/oredge servers. A network adapter card or network interface in eachcomputing/processing device receives computer readable programinstructions from the network and forwards the computer readable programinstructions for storage in a computer readable storage medium withinthe respective computing/processing device.

Computer readable program instructions for carrying out operations ofthe present invention may be assembler instructions,instruction-set-architecture (ISA) instructions, machine instructions,machine dependent instructions, microcode, firmware instructions,state-setting data, or either source code or object code written in anycombination of one or more programming languages, including an objectoriented programming language such as Java, Smalltalk, C++ or the like,and conventional procedural programming languages, such as the “C”programming language or similar programming languages. The computerreadable program instructions may execute entirely on the user'scomputer, partly on the user's computer, as a stand-alone softwarepackage, partly on the user's computer and partly on a remote computeror entirely on the remote computer or server. In the latter scenario,the remote computer may be connected to the user's computer through anytype of network, including a local area network (LAN) or a wide areanetwork (WAN), or the connection may be made to an external computer(for example, through the Internet using an Internet Service Provider).In some embodiments, electronic circuitry including, for example,programmable logic circuitry, field-programmable gate arrays (FPGA), orprogrammable logic arrays (PLA) may execute the computer readableprogram instructions by utilizing state information of the computerreadable program instructions to personalize the electronic circuitry,in order to perform aspects of the present invention.

Aspects of the present invention are described herein with reference toflowchart illustrations and/or block diagrams of methods, apparatus(systems), and computer program products according to embodiments of theinvention. It will be understood that each block of the flowchartillustrations and/or block diagrams, and combinations of blocks in theflowchart illustrations and/or block diagrams, can be implemented bycomputer readable program instructions.

These computer readable program instructions may be provided to aprocessor of a general purpose computer, special purpose computer, orother programmable data processing apparatus to produce a machine, suchthat the instructions, which execute via the processor of the computeror other programmable data processing apparatus, create means forimplementing the functions/acts specified in the flowchart and/or blockdiagram block or blocks. These computer readable program instructionsmay also be stored in a computer readable storage medium that can directa computer, a programmable data processing apparatus, and/or otherdevices to function in a particular manner, such that the computerreadable storage medium having instructions stored therein comprises anarticle of manufacture including instructions which implement aspects ofthe function/act specified in the flowchart and/or block diagram blockor blocks.

The computer readable program instructions may also be loaded onto acomputer, other programmable data processing apparatus, or other deviceto cause a series of operational steps to be performed on the computer,other programmable apparatus or other device to produce a computerimplemented process, such that the instructions which execute on thecomputer, other programmable apparatus, or other device implement thefunctions/acts specified in the flowchart and/or block diagram block orblocks.

The flowchart and block diagrams in the Figures illustrate thearchitecture, functionality, and operation of possible implementationsof systems, methods, and computer program products according to variousembodiments of the present invention. In this regard, each block in theflowchart or block diagrams may represent a module, segment, or portionof instructions, which comprises one or more executable instructions forimplementing the specified logical function(s). In some alternativeimplementations, the functions noted in the block may occur out of theorder noted in the figures. For example, two blocks shown in successionmay, in fact, be executed substantially concurrently, or the blocks maysometimes be executed in the reverse order, depending upon thefunctionality involved. It will also be noted that each block of theblock diagrams and/or flowchart illustration, and combinations of blocksin the block diagrams and/or flowchart illustration, can be implementedby special purpose hardware-based systems that perform the specifiedfunctions or acts or carry out combinations of special purpose hardwareand computer instructions.

The corresponding structures, material, acts, and equivalents of allmeans or steps plus function elements in the claims below are intendedto include any structure, material or act for performing the function incombination with other claimed elements are specifically claimed.

The descriptions of the various embodiments of the present inventionhave been presented for purposes of illustration, but are not intendedto be exhaustive or limited to the embodiments disclosed. Manymodifications and variations will be apparent to those of ordinary skillin the art without departing from the scope and spirit of the describedembodiments. The terminology used herein was chosen to best explain theprinciples of the embodiments, the practical application or technicalimprovement over technologies found in the marketplace, or to enableothers of ordinary skill in the art to understand the embodimentsdisclosed herein.

What is claimed is:
 1. A system for providing type-ahead cues, thesystem comprising: a plurality of synchronized user devices each deviceconfigured to receive and process type-ahead operations, the type-aheadoperations including a data-set of contemporaneous cues or suggestionsthat comprising word search terms for a user of a device of theplurality of synchronized user devices, the contemporaneous cues orsuggestions of the data set used to provide prompts to the user whenfilling out a fillable field in an application running on the device ofthe plurality of synchronized user devices, wherein each device of theplurality of synchronized user devices is configured of push updates ofthe data-set of contemporaneous cues or suggestions to all other devicesof the plurality of synchronized user devices when there is a realmchange of a pushing device of the plurality of synchronized userdevices, the pushed updates configured for immediate consumption byreceiving devices of the plurality of synchronized user devices or forpending consumption by nonreceiving devices of the plurality ofsynchronized user devices, and a processor configured to update aregistry of one device of the plurality of synchronized user devices toreflect the type-ahead operations received from another device of theplurality of synchronized user devices.
 2. The system of claim 1 whereinthe type-ahead operations include a type-ahead data-set having aplurality of word search terms.
 3. The system of claim 1 wherein theapplication comprises an email client, a web browser, a soft-phone, atext messenger, a calendar, a voice translator, or a code translator. 4.The system of claim 1 wherein the type-ahead operations involve browserhistory, or cookies that include a field fillable by a user, or recentlydialed phone numbers, or password credentials provided in a userfillable field.
 5. A method for providing type-ahead cues, the methodcomprising: at a processor of a first device, receive type-aheadoperations from a second device, the second device being operable by afirst user, the type-ahead operations including a data-set ofcontemporaneous cues or suggestions comprising word search terms, forthe first user of the second device and the data-set being provided tothe second device to complete a first fillable field fillable by thefirst user of the second device, the first fillable field in a firstfillable field application running on the second device; at theprocessor of the first device, update a registry of the first device toreflect the received type-ahead operations from the second device; atthe processor of the second device, synchronizing type-ahead operationsbetween the second device and a third device; wherein the third deviceis being operated by a second user, the first user is different than thesecond user, the synchronized type-ahead operations are for use by asecond fillable field application at the third device during processingtype-ahead operations of the second fillable field application at thethird device, and the synchronized type-ahead operations are used by thethird device to provide contemporaneous cues or suggestions to thesecond user when filling the second fillable field of the secondfillable field application of the third device.
 6. The method of claim 5wherein the first fillable field application running on the seconddevice comprises an email client, a web browser, a soft-phone, a textmessenger, a calendar, a voice translator, and a code translator.
 7. Themethod of claim 5 further comprising: at the processor of the firstdevice, receive one or more settings for use in type-ahead operationswhen offering a cue or suggestion for a user entering data into anapplication on the second device; wherein the one or more settings foruse to complete a field in an application on the second devicecomprises: a temperature, or time, or user preference, or cookie, orrecency state of a user different than the first user.
 8. The method ofclaim 5 further comprising: at the processor of the first device, removetype-ahead operations, previously sent to the second device for use by afillable field application on the second device, from the second devicewhen the first user's session in the application on the second deviceends.
 9. The method of claim 5 further comprising: updating a registryto reflect updated information of one of the first user or the seconddevice when personal information of the first user changes.
 10. A methodfor providing type-ahead cues, the method including a computer networksystem having program instructions embodied therewith, the programinstructions readable by one or more processors to cause the networksystem to: receive type-ahead operations from a first user device of afirst user, the type-ahead operations including a data-set of cues orsuggestions comprising word search terms, the data-set is used tocontemporaneously complete a field fillable by a user, the field in anapplication running on a user device and including one or more settingsfor use in type-ahead operations when offering a cue or suggestion for auser entering data into an application on the user's device; update aregistry of the first user device to reflect the received type-aheadoperations from the first user device, wherein the first user device isconfigured to push type-ahead operations when the registry is updated;and synchronize type-ahead operations from the first user device to asecond user device when the second user device is at a target locationor is part of a target business networking group or is part of a targetsocial networking group.
 11. The method of claim 10 wherein theapplication running on the first user device with fields fillable by auser comprises an email client, a web browser, a soft-phone, a textmessenger, a calendar, a voice translator, a code translator.
 12. Themethod of claim 10 wherein the one or more settings for use to completea field in an application on the first user device fillable by the firstuser comprises applications regarding: a temperature, or time, or userpreference, or cookie with a field fillable by the first user, orrecency state of another user with a field fillable by the another user.13. The method of claim 10 wherein the program instructions readable bya processor further cause the network system to: update the registry toreflect updated information of one or more users when personalinformation of the one or more user's changes.